#ifndef FLEXIBLECOMBOBOX_H
#define FLEXIBLECOMBOBOX_H
#include <QComboBox>

namespace ExecTerminalImplNS
{
    class FlexibleComboBox: public QComboBox
    {
        Q_OBJECT
    public:
        FlexibleComboBox(QWidget * parent = 0);
        int lineEditSpacingFromIcon()const;
        void setLineEditSpacingFromIcon(int spacing);
        int lineEditTopMargin()const;
        void setLineEditTopMargin(int margin);
        
        QByteArray getInternalState()const;
        void restoreInternalState(const QByteArray & state);

    protected slots:
        void updateLineEditPos();
    
    protected:
        void resizeEvent(QResizeEvent *e);

    private:
        int theLineEditSpacingFromIcon;
        int theLineEditTopMargin;
    };
}

#endif
